﻿



using System; 
using System.Collections;
using System.Collections.Generic ;
using System.Runtime.Serialization;

namespace ufida.u9.ait.openapi
{
	/// <summary>
	/// 出货单行AITDTO DTO :REST自定义的数据传输类型 
	/// 
	/// </summary>
	[DataContract(Namespace = "ufida.u9.ait.openapi")]
	[Serializable]
	public partial class ShipLineAITDTOData  
	{
		/// <summary>
		/// Default Constructor
		/// </summary>
		public ShipLineAITDTOData()
		{
			initData();
		}
		private void initData()
		{
		
		
					TotalTax=0m; 
					TotalNetMoney=0m; 
					TotalMoney=0m; 
					OrderPrice=0m; 
					ShipQtyTUAmount=0m; 
		
					DocLineNo= 0; 
				
		
					QtyPriceAmount=0m; 
		
		
		
					ShipQtyInvAmount=0m; 
					ShipQtyCostAmount=0m; 
										
					DonationType= -1; 
				
		
					StorageType= -1; 
		
			//调用默认值初始化服务进行配置方式初始化
			UFSoft.UBF.Service.DTOService.InitConfigDefault(this);
		}
		[System.Runtime.Serialization.OnDeserializing]
		internal void OnDeserializing(System.Runtime.Serialization.StreamingContext context)
		{
			 initData();
		}
		#region Do SerializeKey -ForDTODataType
		//只为处理集合型EntityKey。原因集合型EntityKey由于使用臫的集合对象，无法实现数据共享.-UBF专用.
		public void DoSerializeKeyList(IDictionary dict)
		{
			if (dict == null ) dict = new Hashtable() ;
			if (dict[this] != null)
				return ;
			dict[this] = this;
	        			if (this.ShipAITDTO != null) 
			{
				this.ShipAITDTO.DoSerializeKeyList(dict);
			}
	        			if (this.WH != null) 
			{
				this.WH.DoSerializeKeyList(dict);
			}
	        	        	        	        	        	        			if (this.ItemInfo != null) 
			{
				this.ItemInfo.DoSerializeKeyList(dict);
			}
	        	        			if (this.DescFlexField != null) 
			{
				this.DescFlexField.DoSerializeKeyList(dict);
			}
	        			if (this.SrcDocInfo != null) 
			{
				this.SrcDocInfo.DoSerializeKeyList(dict);
			}
	        	        			if (this.TradeUom != null) 
			{
				this.TradeUom.DoSerializeKeyList(dict);
			}
	        			if (this.PriceUom != null) 
			{
				this.PriceUom.DoSerializeKeyList(dict);
			}
	        			if (this.LotInfo != null) 
			{
				this.LotInfo.DoSerializeKeyList(dict);
			}
	        	        	        			if (this.InvUom != null) 
			{
				this.InvUom.DoSerializeKeyList(dict);
			}
	        			if (this.CostUom != null) 
			{
				this.CostUom.DoSerializeKeyList(dict);
			}
	        			if (this.TaxSchedule != null) 
			{
				this.TaxSchedule.DoSerializeKeyList(dict);
			}
	        	        			if (this.Location != null) 
			{
				this.Location.DoSerializeKeyList(dict);
			}
	        			if (this.Project != null) 
			{
				this.Project.DoSerializeKeyList(dict);
			}
	        
		}
		#endregion 
		/// <summary>
		/// Constructor Full Argument
		/// </summary>
		public ShipLineAITDTOData(  ufida.u9.ait.openapi.ShipAITDTOData shipAITDTO  , ufida.u9.ait.openapi.CopyOfCommonArchiveDataDTOData wH  , System.Decimal totalTax  , System.Decimal totalNetMoney  , System.Decimal totalMoney  , System.Decimal orderPrice  , System.Decimal shipQtyTUAmount  , ufida.u9.ait.openapi.CopyOfItemInfoData itemInfo  , System.Int16 docLineNo  , ufida.u9.ait.openapi.CopyOfDescFlexSegmentsData descFlexField  , ufida.u9.ait.openapi.CopyOfSrcDocInfoDTOData srcDocInfo  , System.Decimal qtyPriceAmount  , ufida.u9.ait.openapi.CopyOfCommonArchiveDataDTOData tradeUom  , ufida.u9.ait.openapi.CopyOfCommonArchiveDataDTOData priceUom  , ufida.u9.ait.openapi.CopyOfLotInfoData lotInfo  , System.Decimal shipQtyInvAmount  , System.Decimal shipQtyCostAmount  , ufida.u9.ait.openapi.CopyOfCommonArchiveDataDTOData invUom  , ufida.u9.ait.openapi.CopyOfCommonArchiveDataDTOData costUom  , ufida.u9.ait.openapi.CopyOfCommonArchiveDataDTOData taxSchedule  , System.Int32 donationType  , ufida.u9.ait.openapi.CopyOfCommonArchiveDataDTOData location  , ufida.u9.ait.openapi.CopyOfCommonArchiveDataDTOData project  , System.Int32 storageType  )
		{
			initData();
			this.ShipAITDTO = shipAITDTO;
			this.WH = wH;
			this.TotalTax = totalTax;
			this.TotalNetMoney = totalNetMoney;
			this.TotalMoney = totalMoney;
			this.OrderPrice = orderPrice;
			this.ShipQtyTUAmount = shipQtyTUAmount;
			this.ItemInfo = itemInfo;
			this.DocLineNo = docLineNo;
			this.DescFlexField = descFlexField;
			this.SrcDocInfo = srcDocInfo;
			this.QtyPriceAmount = qtyPriceAmount;
			this.TradeUom = tradeUom;
			this.PriceUom = priceUom;
			this.LotInfo = lotInfo;
			this.ShipQtyInvAmount = shipQtyInvAmount;
			this.ShipQtyCostAmount = shipQtyCostAmount;
			this.InvUom = invUom;
			this.CostUom = costUom;
			this.TaxSchedule = taxSchedule;
			this.DonationType = donationType;
			this.Location = location;
			this.Project = project;
			this.StorageType = storageType;
		}
		#region System Fields 
		//--系统字段,目前没有.EntityData上有相应的字段,用于保存相关的实体状态信息,DTO上没有状态信息.	
		#endregion
		
		#region DTO Properties 
	
		

		/// <summary>
		/// 出货单AITDTO
		/// 出货单行AITDTO.Misc.出货单AITDTO
		/// </summary>
		private ufida.u9.ait.openapi.ShipAITDTOData m_shipAITDTO ;
		[DataMember(IsRequired=false)]
		public ufida.u9.ait.openapi.ShipAITDTOData ShipAITDTO
		{
			get	
			{	
				return m_shipAITDTO ;
			}
			set	
			{	
				m_shipAITDTO = value ;	
			}
		}
			
		

		/// <summary>
		/// 仓库
		/// 出货单行AITDTO.Misc.仓库
		/// </summary>
		private ufida.u9.ait.openapi.CopyOfCommonArchiveDataDTOData m_wH ;
		[DataMember(IsRequired=false)]
		public ufida.u9.ait.openapi.CopyOfCommonArchiveDataDTOData WH
		{
			get	
			{	
				return m_wH ;
			}
			set	
			{	
				m_wH = value ;	
			}
		}
			
		

		/// <summary>
		/// 税额
		/// 出货单行AITDTO.Misc.税额
		/// </summary>
		private System.Decimal m_totalTax ;
		[DataMember(IsRequired=false)]
		public System.Decimal TotalTax
		{
			get	
			{	
				return m_totalTax ;
			}
			set	
			{	
				m_totalTax = value ;	
			}
		}
			
		

		/// <summary>
		/// 未税金额
		/// 出货单行AITDTO.Misc.未税金额
		/// </summary>
		private System.Decimal m_totalNetMoney ;
		[DataMember(IsRequired=false)]
		public System.Decimal TotalNetMoney
		{
			get	
			{	
				return m_totalNetMoney ;
			}
			set	
			{	
				m_totalNetMoney = value ;	
			}
		}
			
		

		/// <summary>
		/// 价税合计
		/// 出货单行AITDTO.Misc.价税合计
		/// </summary>
		private System.Decimal m_totalMoney ;
		[DataMember(IsRequired=false)]
		public System.Decimal TotalMoney
		{
			get	
			{	
				return m_totalMoney ;
			}
			set	
			{	
				m_totalMoney = value ;	
			}
		}
			
		

		/// <summary>
		/// 定价
		/// 出货单行AITDTO.Misc.定价
		/// </summary>
		private System.Decimal m_orderPrice ;
		[DataMember(IsRequired=false)]
		public System.Decimal OrderPrice
		{
			get	
			{	
				return m_orderPrice ;
			}
			set	
			{	
				m_orderPrice = value ;	
			}
		}
			
		

		/// <summary>
		/// 交易数量
		/// 出货单行AITDTO.Misc.交易数量
		/// </summary>
		private System.Decimal m_shipQtyTUAmount ;
		[DataMember(IsRequired=false)]
		public System.Decimal ShipQtyTUAmount
		{
			get	
			{	
				return m_shipQtyTUAmount ;
			}
			set	
			{	
				m_shipQtyTUAmount = value ;	
			}
		}
			
		

		/// <summary>
		/// 料品
		/// 出货单行AITDTO.Misc.料品
		/// </summary>
		private ufida.u9.ait.openapi.CopyOfItemInfoData m_itemInfo ;
		[DataMember(IsRequired=false)]
		public ufida.u9.ait.openapi.CopyOfItemInfoData ItemInfo
		{
			get	
			{	
				return m_itemInfo ;
			}
			set	
			{	
				m_itemInfo = value ;	
			}
		}
			
		

		/// <summary>
		/// 行号
		/// 出货单行AITDTO.Misc.行号
		/// </summary>
		private System.Int16 m_docLineNo ;
		[DataMember(IsRequired=false)]
		public System.Int16 DocLineNo
		{
			get	
			{	
				return m_docLineNo ;
			}
			set	
			{	
				m_docLineNo = value ;	
			}
		}
			
		

		/// <summary>
		/// 实体扩展字段
		/// 出货单行AITDTO.Misc.实体扩展字段
		/// </summary>
		private ufida.u9.ait.openapi.CopyOfDescFlexSegmentsData m_descFlexField ;
		[DataMember(IsRequired=false)]
		public ufida.u9.ait.openapi.CopyOfDescFlexSegmentsData DescFlexField
		{
			get	
			{	
				return m_descFlexField ;
			}
			set	
			{	
				m_descFlexField = value ;	
			}
		}
			
		

		/// <summary>
		/// 来源单据信息
		/// 出货单行AITDTO.Misc.来源单据信息
		/// </summary>
		private ufida.u9.ait.openapi.CopyOfSrcDocInfoDTOData m_srcDocInfo ;
		[DataMember(IsRequired=false)]
		public ufida.u9.ait.openapi.CopyOfSrcDocInfoDTOData SrcDocInfo
		{
			get	
			{	
				return m_srcDocInfo ;
			}
			set	
			{	
				m_srcDocInfo = value ;	
			}
		}
			
		

		/// <summary>
		/// 计价数量
		/// 出货单行AITDTO.Misc.计价数量
		/// </summary>
		private System.Decimal m_qtyPriceAmount ;
		[DataMember(IsRequired=false)]
		public System.Decimal QtyPriceAmount
		{
			get	
			{	
				return m_qtyPriceAmount ;
			}
			set	
			{	
				m_qtyPriceAmount = value ;	
			}
		}
			
		

		/// <summary>
		/// 交易单位
		/// 出货单行AITDTO.Misc.交易单位
		/// </summary>
		private ufida.u9.ait.openapi.CopyOfCommonArchiveDataDTOData m_tradeUom ;
		[DataMember(IsRequired=false)]
		public ufida.u9.ait.openapi.CopyOfCommonArchiveDataDTOData TradeUom
		{
			get	
			{	
				return m_tradeUom ;
			}
			set	
			{	
				m_tradeUom = value ;	
			}
		}
			
		

		/// <summary>
		/// 计价单位
		/// 出货单行AITDTO.Misc.计价单位
		/// </summary>
		private ufida.u9.ait.openapi.CopyOfCommonArchiveDataDTOData m_priceUom ;
		[DataMember(IsRequired=false)]
		public ufida.u9.ait.openapi.CopyOfCommonArchiveDataDTOData PriceUom
		{
			get	
			{	
				return m_priceUom ;
			}
			set	
			{	
				m_priceUom = value ;	
			}
		}
			
		

		/// <summary>
		/// 批号信息
		/// 出货单行AITDTO.Misc.批号信息
		/// </summary>
		private ufida.u9.ait.openapi.CopyOfLotInfoData m_lotInfo ;
		[DataMember(IsRequired=false)]
		public ufida.u9.ait.openapi.CopyOfLotInfoData LotInfo
		{
			get	
			{	
				return m_lotInfo ;
			}
			set	
			{	
				m_lotInfo = value ;	
			}
		}
			
		

		/// <summary>
		/// 库存数量
		/// 出货单行AITDTO.Misc.库存数量
		/// </summary>
		private System.Decimal m_shipQtyInvAmount ;
		[DataMember(IsRequired=false)]
		public System.Decimal ShipQtyInvAmount
		{
			get	
			{	
				return m_shipQtyInvAmount ;
			}
			set	
			{	
				m_shipQtyInvAmount = value ;	
			}
		}
			
		

		/// <summary>
		/// 成本数量
		/// 出货单行AITDTO.Misc.成本数量
		/// </summary>
		private System.Decimal m_shipQtyCostAmount ;
		[DataMember(IsRequired=false)]
		public System.Decimal ShipQtyCostAmount
		{
			get	
			{	
				return m_shipQtyCostAmount ;
			}
			set	
			{	
				m_shipQtyCostAmount = value ;	
			}
		}
			
		

		/// <summary>
		/// 库存单位
		/// 出货单行AITDTO.Misc.库存单位
		/// </summary>
		private ufida.u9.ait.openapi.CopyOfCommonArchiveDataDTOData m_invUom ;
		[DataMember(IsRequired=false)]
		public ufida.u9.ait.openapi.CopyOfCommonArchiveDataDTOData InvUom
		{
			get	
			{	
				return m_invUom ;
			}
			set	
			{	
				m_invUom = value ;	
			}
		}
			
		

		/// <summary>
		/// 成本单位
		/// 出货单行AITDTO.Misc.成本单位
		/// </summary>
		private ufida.u9.ait.openapi.CopyOfCommonArchiveDataDTOData m_costUom ;
		[DataMember(IsRequired=false)]
		public ufida.u9.ait.openapi.CopyOfCommonArchiveDataDTOData CostUom
		{
			get	
			{	
				return m_costUom ;
			}
			set	
			{	
				m_costUom = value ;	
			}
		}
			
		

		/// <summary>
		/// 税组合
		/// 出货单行AITDTO.Misc.税组合
		/// </summary>
		private ufida.u9.ait.openapi.CopyOfCommonArchiveDataDTOData m_taxSchedule ;
		[DataMember(IsRequired=false)]
		public ufida.u9.ait.openapi.CopyOfCommonArchiveDataDTOData TaxSchedule
		{
			get	
			{	
				return m_taxSchedule ;
			}
			set	
			{	
				m_taxSchedule = value ;	
			}
		}
			
		

		/// <summary>
		/// 免费类型
		/// 出货单行AITDTO.Misc.免费类型
		/// </summary>
		private System.Int32 m_donationType ;
		[DataMember(IsRequired=false)]
		public System.Int32 DonationType
		{
			get	
			{	
				return m_donationType ;
			}
			set	
			{	
				m_donationType = value ;	
			}
		}
			
		

		/// <summary>
		/// 库位
		/// 出货单行AITDTO.Misc.库位
		/// </summary>
		private ufida.u9.ait.openapi.CopyOfCommonArchiveDataDTOData m_location ;
		[DataMember(IsRequired=false)]
		public ufida.u9.ait.openapi.CopyOfCommonArchiveDataDTOData Location
		{
			get	
			{	
				return m_location ;
			}
			set	
			{	
				m_location = value ;	
			}
		}
			
		

		/// <summary>
		/// 项目
		/// 出货单行AITDTO.Misc.项目
		/// </summary>
		private ufida.u9.ait.openapi.CopyOfCommonArchiveDataDTOData m_project ;
		[DataMember(IsRequired=false)]
		public ufida.u9.ait.openapi.CopyOfCommonArchiveDataDTOData Project
		{
			get	
			{	
				return m_project ;
			}
			set	
			{	
				m_project = value ;	
			}
		}
			
		

		/// <summary>
		/// 存储类型
		/// 出货单行AITDTO.Misc.存储类型
		/// </summary>
		private System.Int32 m_storageType ;
		[DataMember(IsRequired=false)]
		public System.Int32 StorageType
		{
			get	
			{	
				return m_storageType ;
			}
			set	
			{	
				m_storageType = value ;	
			}
		}
			
		#endregion	

		#region Multi_Fields
																																																
		#endregion 
	} 	
}
